<?php
$menu = 1;
$type = '등록';
if($_GET['id']) {
    $type = "수정";
}
$title = "상품 ".$type; 

$g4_path = "../"; 
require_once ($g4_path.'common.php');
require_once ('./admin.head.php');
require_once ('./admin.lib.php');

$tpl = new Template_;
$tpl->template_dir = './tpl';
$tpl->compile_dir = './tpl/compile';
$tpl->assign('type', $type);
$perPage = 10;
$_temp = $filename = $sqlWhere = NULL; 
$_datano = FALSE;
$_regcode = 'register';
$defDir = "../data/bookImg/"; //업로드 될 디렉토리
$defFileType = array('jpg', 'gif', 'jpeg', 'png'); // 업로드 허용 파일 확장자들

if($_POST) { //등록,수정,삭제 시 처리
    $name = addslashes($_POST['name']) or alert("제목은 필수 항목입니다.");
    $author = addslashes($_POST['author']) or alert("저자는 필수 항목입니다."); 
    $publisher = addslashes($_POST['publisher']) or alert("출판사는 필수 항목입니다."); 
    $price = (int)$_POST['price'];
    $cate1 = $_POST['cate1'];
    $cate2 = $_POST['cate2'];
    $cate3 = $_POST['cate3']; 
    $bookorder = addslashes($_POST['bookorder']); 
    $contents = addslashes($_POST['contents']); 
    $sql = "SET name = '$name', author = '$author', publisher='$publisher', price='$price', rate='".$_POST['rate']."', bookorder='$bookorder', contents='$contents', cate1='$cate1', cate2='$cate2', cate3='$cate3'";
    
    switch($_POST['regcode']) {
        case 'modify': // 수정
            $sql = "UPDATE book ".$sql; 
            if(isset($_POST['filedelete']) && $_POST['filedelete'] == "on") { // 파일삭제 체크되어 있으면 이미지 삭제
                fileDelete($_POST['imagefile'], 'book', 'image', $_POST['datano'], $defDir);
                $sql .= ", image=''"; 
            }
            $sqlWhere = " WHERE no = '".$_POST['datano']."' ";
            break;
        case 'register': // 추가
            $sql = "INSERT INTO book ".$sql; 
            break;
        case 'delete': // 삭제
            if($_POST['imagefile']) {
                fileDelete($_POST['imagefile'], 'book', 'image', $_POST['datano'], $defDir); // 이미지 삭제
            }
            $sql = "DELETE FROM book WHERE no = '".$_POST['datano']."' LIMIT 1"; 
            break;
        default:
            alert('오류 : 잘못된 접근입니다.', './bookManage.php'); 
    }
   
    // 이미지 등록 처리 
    if(($_POST['regcode'] != 'delete') && isset($_FILES['img']['name']) && $_FILES['img']['error'] == 0) {
        if($_POST['imagefile']) { // 원래 이미지 업로드가 되어있었으면
            fileDelete($_POST['imagefile'], 'book', 'image', $_POST['datano'], $defDir); // 이미지 삭제
        }
        $filename = fileUpload('img',$defDir, $defFileType);
        $sql .= ", image='".$filename."'"; 
    }
           
    $ret = sql_query($sql.$sqlWhere) or alert('오류 : SQL오류입니다.:'.mysql_error(), './bookManage.php'); 
    switch($_POST['config']) {
        case 'add':
            goto_url('./bookManageDetail.php?add'); 
        break;
        case 'delete':
            alert('성공적으로 삭제되었습니다.', './bookManage.php'); 
        break;
        default:
            $page = 1; 
            if($_POST['datano']) {
                $res = sql_fetch("select count(*) as cnt from book where no > ".$_POST['datano']);
                $pageRet = $res[cnt]/$perPage+1;
                $page = (int)$pageRet;
            }
            goto_url('./bookManage.php?page='.$page); 
    }
}

if(isset($_GET['id'])) { //수정시 (id값이 넘어왔을때)
    $_regcode = 'modify';
    $_datano = $_GET['id']; 
    $data = getDb('book', $_datano, 'no'); 
    $data['name'] = htmlspecialchars(stripslashes($data['name'])); 
    $data['author'] = htmlspecialchars(stripslashes($data['author'])); 
    $data['publisher'] = htmlspecialchars(stripslashes($data['publisher'])); 
    $tpl->assign('data', $data);
    
    $cate1 = $data['cate1'];
    $cate2 = $data['cate2'];
    $cate3 = $data['cate3'];
    
    if(!$data['no']) {
        alert('자료가 존재하지 않습니다.');
    }
}
$tpl->assign('regcode', $_regcode);
require_once ('./admin.head.php');
$tpl->define('basic',"bookDetail.html");
$tpl->print_('basic');
require_once('inc/book_category.php');
require_once('admin.foot.php');
